Construction of three-dimensional computer models has become a valuable part of the design, construction, and manufacturing process in many fields. The efficiency of the modeling process has been restricted by the difficulty of accurately positioning modeling tools and model objects in three-dimensional space. This invention provides a set of methods for fast, accurate positioning of tools and objects in model space. These methods provide a novel economy of steps to accomplish key functions.
The space-jump, which is one aspect of the invention, provides instant rendezvous of a three dimensional (3D) pointer with a distant location in space. The dynamic surface pointer, another aspect of the invention, automatically positions a 3D pointer in space relative to active objects. This automatic positioning provides very efficient performance of certain modeling tasks, including but not limited to cutting, 3D image-positioning, and feature-based or traditional boolean operations.
In accordance with the invention, therefore, a method is shown and described for accurately positioning a cursor on a geometric point of a three dimensional object (such as an object vertex) shown in a two dimensional projected view. The system monitors the position of the movable pointer on a two dimensional projected view of the three dimensional object. When the user desires to accurately position the cursor on the object, the user signals the system via an input device or other means. The system receives the signal, which indicates that the pointer is preliminarily aligned with a geometric point on the object. In response to the signal, the system determines the position of a nearest geometric point to the pointer and moves the pointer to the spatial coordinates of the point's position. To aid in identifying geometric points, they are visibly different in the projected view from non-geometric points.
In another embodiment of the invention, the cursor is positioned in three dimensions by computing the coordinates of a three dimensional point on an object surface which coincides in two dimensions with the coordinates of the pointer. The three dimensional coordinates of the pointer are then reset to the three dimensional coordinates of the object point.
The foregoing and other objects, features, and advantages of the invention will become more apparent from the following detailed description of a preferred embodiment and the accompanying drawings.